A three-dimensional (3D) model may be developed from multiple images of an object taken from different viewpoints relative to the object. Visual Structure from Motion (VisualSfM) is an example of one method for producing 3D models from multiple images of an object taken from different viewpoints relative to the object. The 3D model may be used in performing an autonomous operation on the object, for instance, by a robot or other device. However, Visual SfM often suffers from insufficient features on objects or feature detection discrepancy among images because of illumination changes. Such conditions may be particularly present with objects, such as satellites or other spacecraft, in space where illumination levels of the object may vary widely from one viewpoint to another. This results in incomplete 3D models with holes or missing information or data on surfaces. Accordingly, there is a need to fill-in as many holes as possible and generate a denser 3D model.